package com.decent.service.impl;

import com.decent.dao.StoreMapper;
import com.decent.entity.Store;
import com.decent.service.StoreService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;


@Service
public class StoreServiceImpl implements StoreService {

    @Autowired
    private StoreMapper storeMapper;

    /**
     * 对外门店列表查询
     *
     * @return List<Store>
     */
    @Override
    public List<Store> getStoreList() {
        return storeMapper.getStoreList();
    }

    /**
     * 插入门店
     *
     * @param store 门店实体
     * @return 影响行数
     */
    @Override
    @Transactional
    public Integer insertStore(Store store) {
        return storeMapper.insert(store);
    }

    /**
     * 修改门店的功能，修改门店名称的时候同步修改对应的订单信息
     *
     * @param store id,name
     * @return 影响行数
     */
    @Override
    @Transactional
    public Integer updateStore(Store store) {
        return storeMapper.updateStore(store);
    }

    /**
     * 删除门店的功能，门店有绑定订单的情况下不允许删除
     *
     * @param storeId id
     * @return 影响行数
     */
    @Override
    @Transactional
    public Integer deleteStore(Integer storeId) {
        return storeMapper.deleteStore(storeId);
    }
}
